package com.xinqi.modules.discuss.discuss.convert;

import com.xinqi.common.mapstruct.CommonConvertConfig;
import com.xinqi.modules.discuss.discuss.domain.CourseDiscussEntity;
import com.xinqi.modules.discuss.discuss.dto.req.CourseDiscussCreateDTO;
import com.xinqi.modules.discuss.discuss.dto.req.CourseDiscussUpdateDTO;
import com.xinqi.modules.discuss.discuss.dto.rsp.CourseDiscussResultDTO;
import org.mapstruct.Mapper;
import org.mapstruct.MappingTarget;

/**
 * 课程讨论主表转换
 *
 * @author: yyzhen
 * @date: 2023/03/13
 */
@Mapper(config = CommonConvertConfig.class)
public abstract class CourseDiscussConvert {

    public abstract CourseDiscussEntity create(CourseDiscussCreateDTO s);

    public abstract CourseDiscussEntity newEntity(CourseDiscussEntity s);

    public abstract CourseDiscussEntity update(CourseDiscussUpdateDTO s, @MappingTarget CourseDiscussEntity t);

    public abstract CourseDiscussEntity update(CourseDiscussUpdateDTO s);

    public abstract CourseDiscussResultDTO convert(CourseDiscussEntity s);
}
